#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include<QDebug>
#include<fstream>
#include<iostream>
#include<QShortcut>
#include<QFormLayout>
#include<QButtonGroup>
#include<QLineEdit>
#include<QTimer>
#include<windows.h>
#include<QPushButton>
#include<QToolTip>
#include<QDockWidget>
#include<QDialog>
#include<QPushButton>
#include<QStatusBar>
#include<QToolBar>
#include<QPair>
#include<QCursor>
#include<QHash>
#include<QVector>
#include<QPair>
#include<QMap>
#include<QMessageBox>
#include<QColorDialog>
#include<QFileDialog>
#include<QFontDialog>
#include<QTimer>
#include<QInputDialog>
#include<QFile>
#include<QFileDevice>
#include<QWaitCondition>
#include<Qpainter>
#include<QPaintEvent>
#include <QMainWindow>
#include<QTcpServer>
#include<QTcpSocket>
#include<QAbstractSocket>
#include<QNetworkAccessManager>
#include<QNetworkInterface>
#include<QNetworkReply>
#include<QNetworkRequest>
#include<QNetworkAddressEntry>
#include<QHostInfo>
#include<QUdpSocket>
#include<QNetworkDatagram>
namespace Ui {
class widget;
}

class widget : public QWidget
{
    Q_OBJECT
public:
    QTcpSocket* ts;
    QString name;
    QString address="127.0.0.1";
public:
    void setName(QString na);
    void init_sock();
    void receivemes();
    QString gaintime();
    void sendmes(QString type,QString str);
    void deal_come(QString str);
    void deal_leave(QString str);
    void deal_mes(QString str);
    void deal_people(QString people);
    void deletePeopleFromlistWidget(QString str);

public:
    explicit widget(QWidget *parent = nullptr);
    widget(QString na);
    ~widget();
signals:
    void closeWidget();
private slots:
    void on_pushButton_send_clicked();

    void on_pushButton_clicked();

private:
    Ui::widget *ui;
};

#endif // WIDGET_H
